package com.service.infoEntry.vo;

import com.alibaba.excel.annotation.ExcelProperty;
import com.service.infoEntry.entity.CommentInfo;
import lombok.Data;

import java.util.Date;
import java.util.List;

@Data
public class TroubleVo {
    /**
     * 问题id
     */
    private String id;
    /**
     * 问题单号
     */
    private String no;
    /**
     * 问题描述
     */
    private String desc;
    /**
     * 问题项目说明
     */
    private String programmeDesc;
    /**
     * 问题联系人
     */
    private String contact;
    /**
     * 问题提出时间
     */
    private Date troubleTime;
    /**
     * 问题状态:0-发现;1-定位;2-现网带缺陷闭环;3-挂起;4-正式闭环
     */
    private Integer status;
    private String statusStr;

    /**
     * 问题状态:0-公开;1-私密
     */
    private Integer troubleStatus;
    private String troubleStatusStr;
    /**
     * 问题来源
     */
    private String origin;
    /**
     * 其他系统对接编号
     */
    private String otherSystemNo;
    /**
     * 问题进展
     */
    private String process;
    /**
     * 问题结论:0-待定位;1-需求;2-问题
     */
    private Integer conclusion;
    /**
     * 其余跟踪单号(如RM单号)
     */
    private String otherTrackingNo;
    /**
     * 提出问题的用户id
     */
    private UserVo userVo;
    /**
     * 问题所属项目id
     */
    private String programmeId;
    /**
     * 问题所属项目id
     */
    private String programmeName;
    /**
     * 所属团队id
     */
    private String teamId;
    /**
     * 所属团队id
     */
    private String teamName;
    /**
     * 父问题单号
     */
    private String parentId;


    private List<CommentVo> commentInfoList;

    public String getStatusStr() {
        if(status != null)
        {
            switch (status)
            {
                case 0:
                    statusStr = "发现";
                    break;
                case 1:
                    statusStr = "定位";
                    break;
                case 2:
                    statusStr = "现网带缺陷闭环";
                    break;
                case 3:
                    statusStr = "挂起";
                    break;
                case 4:
                    statusStr = "正式闭环";
                    break;
                default:
                    break;
            }
        }
        return statusStr;
    }

    public String getTroubleStatusStr() {
        if(troubleStatus != null)
        {
            switch (troubleStatus)
            {
                case 0:
                    troubleStatusStr = "公开";
                    break;
                case 1:
                    troubleStatusStr = "私密";
                    break;
                default:
                    break;
            }
        }
        return troubleStatusStr;
    }
}
